/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package ruteodosciudades;

import java.awt.TextArea;

/**
 *
 * @author markos
 */
public class DocText extends TextArea {
    final String drawnodos = new String("DIBUJAR NODOS:\n"+
	  "Dibuje un nodo haciendo click en el mouse.\n\n");
    final String rmvnodos = new String("REMOVER NODOS:\n"+
	  "Para remover un nodo presione <ctrl> y haga click en el nodo.\n"+
	  "No se puede remover el nodo_inicial.\n"+
	  "Seleccione otro nodo_inicial, asi podra remover el nodo.\n\n");
    final String mvnodos = new String("MOVER NODOS\n"+
	  "Para mover un nodo presione <Shift>, haga click en el nodo,\ny arrastrelo a"+
	  " su nueva posicion.\n\n");
    final String nodo_inicial = new String("NODO INICIAL:\n"+
	  "El nodo_inicial es azul, los otros nodos son grises.\n"+
	  "El primer nodo que usted dibuja en la pantalla sera el nodo_inicial.\n"+
	  "Para seleccionar otro nodo_inicial presione <ctrl>, haga click en el nodo_inicial,\n"+
	  "y arrastre el mouse a otro nodo.\n"+
	  "Para borrar el nodo_inicial, primero seleccione otro nodo_inicial, y despues"+
	  "\nremueva el nodo normalmente.\n\n");
    final String drawaristas = new String("DIBUJAR ARISTAS:\n"+
	  "Para dibujar una arista haga click al mouse en un nodo,"+
	  "y arrastrelo a otro nodo.\n\n");
    final String peso = new String("CAMBIAR PESOS:\n"+
	  "Para cambiar el peso de una arista, haga click en la flecha y \n"+
	  "arrastrela sobre la arista.\n\n");
    final String rmvaristas = new String("REMOVER ARISTAS:\n"+
	  "Para remover una arista, cambiar su peso a 0.\n\n");
    final String clrreset = new String("BOTON DE<LIMPIAR>: "+
	  "Remover el grafo de la pantalla.\n"+
	  "BOTON DE<INICIALIZAR>: "+
	  "Remover los resultados del algoritmo en el grafo,\n"+
	  " y abrir la pantalla.\n\n");
    final String runalg = new String("BOTON DE <EJECUTAR>: "+
	  "Ejecuta el algoritmo en el grafo, habra un tiempo\n" +
	  "de retraso de +/- 1 segundos entre cada paso.\n"+
	  "Para ejecutar el algoritmo mas lento, use <PASO>.\n");
    final String paso = new String("BOTON DE <PASO>: " +
	  "Recorrer el algoritmo paso a paso.\n");
    final String ejemplo = new String("BOTON DE <EJEMPLO>: "+
	  "Despliega un grafo en la pantalla.\n"+
	  "Usted puede usar <PASO> or <EJECUTAR>\n");
    final String exitbutton = new String("BOTON DE <SALIR>: " +
	  "Solo funciona si el applet es ejecutado en appletviewer.\n");
    final String toclose = new String("ERROR: "+
	  "Esta posicion es para cerrar a otro nodo/arista.\n");
    final String hecho = new String("El lgoritmo ha terminado, " +
	  "siga las aristas naranjas del nodo_inicial a cualquier nodo "+
	  "para obtener\nel mas corto camino al " +
	  "nodo. La longitud del camino se escribe en el nodo.\n" +
          "presione <INICIALIZAR> para inicializar el grafo, y liberar la pantalla.");
    final String alguno = new String("El algoritmo ha terminado, " +
	  "siga las aristas naranjas del nodo_inicial a cualquier nodo "+
	  "para obtener\nel mas corto camino al " +
	  "nodo. La longitud del camino se escribe en el nodo.\n" +
          "No hay caminos del nodo_inicial a ningun otro nodo.\n" +
          "presione <INICIALIZAR> para inicializar el grafo, y liberar la pantalla.");
    final String ninguno = new String("El algoritmo ha terminado, " +
	  "no hay nodos alcanzables desde el nodo inicial.\n"+
	  "presione <INICIALIZAR> para inicializar el grafo, y liberar la pantalla.");

    final String maxnodos = new String("ERROR: "+
	  "Maximo numero de nodos alcanzado!\n\n");
    final String info = new String("DOCUMENTACION:\n"+
	  "Usted puede ver toda la documentacion u obtener documentacion\n"+
	  "de algo especifico "+
	  "seleccionando el item a la izquierda.\nSeleccionar <Referencia> "+
	  "lo regresa "+
	  " al texto.\n\n");
    final String cerrado = new String("ERROR: "+
	  "Teclado/mouse cerrado para esta accion.\n"+
	  "Presione <SIGUIENTE PASO> o <INICIALIZAR>.\n");
    final String doc = info + drawnodos + rmvnodos + mvnodos +
		       nodo_inicial + drawaristas + peso + rmvaristas +
		       clrreset + runalg + paso + ejemplo + exitbutton;
    
    public DocText() {
	super(5, 2);
	setText(doc);
    }

    public void showline(String str) {
	if (str.equals("dibujar nodos"))              setText(drawnodos);
	else if (str.equals("remover nodos"))       setText(rmvnodos);
	else if (str.equals("mover nodos"))         setText(mvnodos);
	else if (str.equals("el nodo_inicial"))      setText(nodo_inicial);
	else if (str.equals("dibujar aristas"))        setText(drawaristas);
	else if (str.equals("cambiar pesos"))     setText(peso);
	else if (str.equals("remover aristas"))      setText(rmvaristas);
	else if (str.equals("limpiar / inicializar"))      setText(clrreset);
	else if (str.equals("ejecutar algoritmo"))      setText(runalg);
	else if (str.equals("pasar"))       setText(paso);
	else if (str.equals("ejemplo"))            setText(ejemplo);
        else if (str.equals("salir"))               setText(exitbutton);
	else if (str.equals("referencia"))          setText(doc);
	else if (str.equals("toclose"))            setText(toclose);
	else if (str.equals("hecho"))               setText(hecho);
	else if (str.equals("cerrado"))             setText(cerrado);
	else if (str.equals("maxnodos"))           setText(maxnodos);
        else if (str.equals("ninguno"))               setText(ninguno);
        else if (str.equals("alguno"))               setText(alguno);
	else setText(str);
    }

}
